package com.yunhai.model.entity.rms;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunhai.model.base.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.experimental.Accessors;

/**
 * 设备清洗规则配置（生产系统清洗策略）实体
 * 
 * @author mengze
 * @date 2025-05-13 19:36:54
 */
@ApiModel("设备清洗规则配置（生产系统清洗策略）实体")
@Data
@Accessors(chain = true)
@TableName("rms_cleaning_rule_config")
public class RmsCleaningRuleConfigEntity extends BaseEntity {

	@ApiModelProperty(value = "主键id", example = "10001")
	@TableId(type = IdType.ASSIGN_ID)
	private Long id;
	/**
	 * 规则编码（业务唯一标识，如CLN_2024_001）
	 */
	@ApiModelProperty("规则编码（业务唯一标识，如CLN_2024_001）")
	private String code;
	/**
	 * 规则名称（如：反应釜月度深度清洗）
	 */
	@ApiModelProperty("规则名称（如：反应釜月度深度清洗）")
	private String ruleName;
	/**
	 * 清洗步骤（JSON数组格式，示例：[{"step":1,"desc":"预冲洗"},{"step":2,"desc":"碱洗"}...]）
	 */
	@ApiModelProperty("清洗步骤（JSON数组格式，示例：）")
	private String cleaningSteps;
	/**
	 * 提前提醒开关（0-关闭 1-开启）
	 */
	@ApiModelProperty("提前提醒开关（0-关闭 1-开启）")
	private Integer advanceNoticeFlag;
	/**
	 * 空仓清洗要求（0-允许残留 1-必须清空）
	 */
	@ApiModelProperty("空仓清洗要求（0-允许残留 1-必须清空）")
	private Integer emptyBeforeCleaningFlag;
	/**
	 * 清洗前需报废的物料数量（单位：件）
	 */
	@ApiModelProperty("清洗前需报废的物料数量（单位：件）")
	private Integer materialScrapBefore;
	/**
	 * 分批清洗标识（0-单次完成 1-分批处理）
	 */
	@ApiModelProperty("分批清洗标识（0-单次完成 1-分批处理）")
	private Integer batchCleaningFlag;
	/**
	 * 规则状态（enabled-启用 / disabled-停用）
	 */
	@ApiModelProperty("规则状态（enabled-启用 / disabled-停用）")
	private Integer status;
	/**
	 * 创建时间（自动记录）
	 */
	@ApiModelProperty("创建时间（自动记录）")
	private Date createdTime;
	/**
	 * 最后更新时间（自动更新）
	 */
	@ApiModelProperty("最后更新时间（自动更新）")
	private Date updatedTime;
}
